
// highp -2^16 - 2^16
// mediump -2^10 - 2^10
// lowp -2^8 - 2^8

precision lowp float; // 数据精度（highp高 、 mediump 中  lowp 低） 声明 （必须写在这个位置）


// attribute 声明变量  vec3 三维向量 position 顶点坐标
// attribute 声明变量  vec2 2维向量 uv 顶点坐标
attribute vec3 position;
attribute vec2 uv;
// uniform 声明变量  mat4 4×4浮点矩阵
uniform mat4 modelMatrix;  // 模型矩阵
uniform mat4 viewMatrix;  //视图矩阵
uniform mat4 projectionMatrix;  // 投影矩阵

// varying vec2 vUv 传递数据给片元着色器 把vUv 传递过去
varying vec2 vUv;

void main(){
    vUv = uv ; //赋值
    gl_Position = projectionMatrix * viewMatrix * modelMatrix * vec4( position, 1.0 ) ;
}